zynqmp: pm: Invalidate several clocks that Linux doesn't need to control
authorJolly Shah <[email protected]>
Fri, 4 Jan 2019 20:03:44 +0000 (12:03 -0800)
committerJolly Shah <[email protected]>
Fri, 4 Jan 2019 20:03:54 +0000 (12:03 -0800)
Linux has no reason to use these system and debug clocks and therefore
shouldn't access them. These clocks are marked as invalid in order to
prevent Linux from registering and querying them.

Note that despite clocks being marked as invalid a security issue
still remains in place as there is nothing that prevents the
non-secure world from gating these clocks and that way causing
damage to the system.

Signed-off-by: Mirela Simonovic <[email protected]>
Acked-by: Will Wong <[email protected]>
Signed-off-by: Jolly Shah <[email protected]>
plat/xilinx/zynqmp/pm_service/pm_api_clock.c

index 8901ea691db917acf7de75090a8f6696ef423b51..c49969f2429a003980e7cd2e559a75297428864f 100644 (file)
@@ -2256,6 +2256,24 @@ static struct pm_ext_clock ext_clocks[] = {
 static uint32_t pm_clk_invalid_list[] = {CLK_USB0, CLK_USB1, CLK_CSU_SPB,
        CLK_ACPU_FULL,
        CLK_ACPU_HALF,
+       CLK_DBG_FPD,
+       CLK_DBG_LPD,
+       CLK_DBG_TRACE,
+       CLK_DBG_TSTMP,
+       CLK_DDR_REF,
+       CLK_TOPSW_MAIN,
+       CLK_TOPSW_LSBUS,
+       CLK_GTGREF0_REF,
+       CLK_LPD_SWITCH,
+       CLK_LPD_LSBUS,
+       CLK_CPU_R5,
+       CLK_CPU_R5_CORE,
+       CLK_CSU_SPB,
+       CLK_CSU_PLL,
+       CLK_PCAP,
+       CLK_IOU_SWITCH,
+       CLK_DLL_REF,
+       CLK_TIMESTAMP_REF,
 };
 
 /**